#include "stl.h"
#include "parse.h"
#include "solution.h"
int main(int argc, char *argv[])
{
    string str = "[[\"[[\\\"A\\\",\\\"B\\\",\\\"C\\\",\\\"E\\\"],[\\\"S\\\",\\\"F\\\",\\\"C\\\",\\\"S\\\"],[\\\"A\\\",\\\"D\\\",\\\"E\\\",\\\"E\\\"]]\",\"\\\"ABCCED\\\"\"],[\"[[\\\"A\\\",\\\"B\\\",\\\"C\\\",\\\"E\\\"],[\\\"S\\\",\\\"F\\\",\\\"C\\\",\\\"S\\\"],[\\\"A\\\",\\\"D\\\",\\\"E\\\",\\\"E\\\"]]\",\"\\\"SEE\\\"\"],[\"[[\\\"A\\\",\\\"B\\\",\\\"C\\\",\\\"E\\\"],[\\\"S\\\",\\\"F\\\",\\\"C\\\",\\\"S\\\"],[\\\"A\\\",\\\"D\\\",\\\"E\\\",\\\"E\\\"]]\",\"\\\"ABCB\\\"\"]]";
    vector<vector<string>> arr = parseStringArrArr(str);
    for (int i = 0; i < arr.size(); i++)
    {
      vector<string> args = arr[i];
      Solution *s = new Solution();
      vector<vector<string>> arg0 = parseStringArrArr(args[0]);
      vector<vector<char>> ts(arg0.size(), vector<char>(arg0[0].size()));
      vv_conv<string,char>(arg0, ts, [](const string&f){return f[0];});
      string arg1 = parseString(args[1]);
      bool result=s->exist(ts,arg1);
      string resultabc =serializeBool(result);
      cout << "resultabc"+to_string(i)+":" << resultabc <<"resultend"<< endl;
    }
    return 0;
}